package com.dkd.applet.service;


import com.baomidou.mybatisplus.extension.service.IService;
import com.dkd.applet.domain.Order;
import com.dkd.applet.domain.dto.PayDto;

public interface OrderService extends IService<Order> {

    /**
     * 创建订单
     * @param payDto
     * @param platform
     * @return
     */
    Order createOrder(PayDto payDto,String platform);

    /**
     * 检查所有的订单状态，将超过两分钟未支付的订单设置未超时订单。
     * 订单状态为失效，支付状态为未支付，取消原因为订单超时
     */
    void checkOrder();

    /**
     * 关闭订单
     * @param orderNo
     * @param platform
     * @return
     */
    void closeOrder(String orderNo, String platform);

    /**
     * 退款
     * @param orderNo 订单编号
     * @param platform 支付方式
     * @return
     */
    boolean refund(String orderNo, String platform);
}
